#ifndef AST_DECLARATIONS_PARAMETER_TYPE_LIST_H
#define AST_DECLARATIONS_PARAMETER_TYPE_LIST_H

#include "../ASTNode.h"
class ParameterList;

/*
C99  6.7.5
parameter-type-list:
		parameter-list
		parameter-list,  ... 
*/
class ParameterTypeList : public ASTNode
{
public:
	enum{
		determin_args,
		non_determin_args,
	};
protected:
	ParameterTypeList(void)
		: ASTNode(ASTNode::parameter_type_list){};
public:
	ParameterTypeList(ParameterList *pParams, int iType = ParameterTypeList::determin_args)
		: ASTNode(ASTNode::parameter_type_list)
		, m_pParams(pParams)
		, m_iType(iType){};


	virtual ~ParameterTypeList(void);


	virtual void					codeGen();
protected:
	tiny_int						m_iType;
	ParameterList *					m_pParams;
};
#endif


